makefile: fix compilation and installation

This was originally taken from:
https://sources.debian.org/data/main/liba/libavl/0.3.5-4/debian/patches/fix-makefile

Unfortunately, the URL does not end in ".patch", therefore we cannot
use it in the FOO_PATCH variable directly.

Signed-off-by: Michael Walle <michael@walle.cc>

--- a/GNUmakefile
+++ b/GNUmakefile
@@ -6,7 +6,8 @@
 LDCONFIG ?= /sbin/ldconfig
 
 # Some suggestions: (-mcpu= generates i386 compatible code)
-CFLAGS ?= -O2 -fomit-frame-pointer -pipe -mcpu=i686 -w
+CFLAGS ?= -O2 -pipe -Wall -Werror
+CFLAGS += -fPIC
 #CFLAGS = -O2 -fomit-frame-pointer -pipe -march=i586 -Wall -g
 #CFLAGS = -O6 -fomit-frame-pointer -pipe -march=i586 -Wall -ansi -pedantic
 #CFLAGS = -O6 -fomit-frame-pointer -pipe -march=i686 -Wall -ansi -pedantic
@@ -34,20 +35,21 @@
 	$(CC) $(LDFLAGS) $^ -o $@ $(LIBS)
 
 $(LIBRARY): avl.o
-	$(CC) -nostdlib -shared -Wl,-soname,libavl.so.1 $^ -o $@ -lc
+	$(CC) $(LDFLAGS) -shared -Wl,-soname,libavl.so.1 $^ -o $@ -lc
 
 clean:
 	$(RM) *.o $(PROGRAMS) libavl.*
 
 install: all
 	$(INSTALL) -d $(DESTDIR)$(libdir)
-	$(INSTALL) avl.h $(DESTDIR)$(includedir)
-	$(INSTALL) $(LIBRARIES) $(DESTDIR)$(libdir)
-	for i in $(LIBRARIES); do\
+	$(INSTALL) -d $(DESTDIR)$(includedir)
+	$(INSTALL) -m 644 avl.h $(DESTDIR)$(includedir)
+	$(INSTALL) -m 644 $(LIBRARY) $(DESTDIR)$(libdir)
+	for i in $(LIBRARY); do\
 		$(LN) -sf $$i $(DESTDIR)$(libdir)/$${i%.*};\
 		$(LN) -sf $${i%.*} $(DESTDIR)$(libdir)/$${i%.*.*};\
 	done
-	-$(LDCONFIG)
+	#-$(LDCONFIG)
 
 .PHONY: clean install all
 .PRECIOUS: %.h %.c
